package com.wechat.app.utils

import androidx.compose.ui.graphics.Color

/**
 * 获取名称的首字母（支持中文和英文）
 */
fun getInitials(name: String): String {
    if (name.isEmpty()) {
        return "?"
    }
    
    // 移除职位信息（如果有 "-" 分隔符）
    val displayName = name.split(" - ").first().trim()
    
    if (displayName.isEmpty()) {
        return "?"
    }
    
    // 如果是中文，取第一个字符
    val firstChar = displayName[0]
    val charCode = firstChar.code
    if (charCode > 127) {
        return firstChar.uppercase()
    }
    
    // 如果是英文，取第一个字母
    if (firstChar.isLetter()) {
        return firstChar.uppercase()
    }
    
    // 如果都不是，返回第一个字符
    return firstChar.uppercase()
}

/**
 * 根据首字母生成颜色
 */
fun getAvatarColor(initial: String): Color {
    val colors = listOf(
        Color(0xFF4CAF50), // Green
        Color(0xFF2196F3), // Blue
        Color(0xFF9C27B0), // Purple
        Color(0xFFF44336), // Red
        Color(0xFFFF9800), // Orange
        Color(0xFF00BCD4), // Cyan
        Color(0xFFE91E63), // Pink
        Color(0xFF795548), // Brown
        Color(0xFF607D8B), // Blue Grey
        Color(0xFF3F51B5), // Indigo
    )
    
    val index = if (initial.isNotEmpty()) {
        initial[0].code % colors.size
    } else {
        0
    }
    return colors[index]
}

